home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: Alpha / Whiteline Alpha.iso / progtool / gfabasic / gfa_ptch / libpatch / err.lst < prev    next >
Encoding:
File List  |  1994-09-22  |  2.2 KB  |  99 lines

  1. ' ******************************************************************************
  2. ' * Demoprogramm zu GFALI072                                            13.07.93
  3. ' *
  4. ' * © Christoph Conrad          Adalbertsteinweg 113                52070 Aachen
  5. ' ******************************************************************************
  6. $m 60000
  7. ' $I+, damit EVERY/AFTER/Break über CTRL/SHIFT/ALT. Sollten unter MiNT, MultiTOS
  8. ' und in Accessorys überhaupt nicht verwendet werden, in normalen Applikationen
  9. ' ist es auch unsauber, da eine Applikation sich in Vektoren einhängt (ohne XBRA).
  10. ' Hier nur als Demo.
  11. $U+,I+
  12. EVERY 200 GOSUB ping
  13. '
  14. ON BREAK GOSUB break
  15. ON ERROR GOSUB err
  16. '
  17. auto!=BTST(ERR,0)
  18. acc!=BTST(ERR,1)
  19. nomem!=BTST(ERR,2)
  20. '
  21. ' WICHTIG!
  22. IF NOT auto!
  23.   CLIP OFF
  24. ENDIF
  25. '
  26. ' >>> $m-Speicher stand nicht zur Verfügung
  27. IF nomem!
  28.   PRINT "Speicheranforderung nicht erfüllt!"
  29.   IF auto!
  30.     ' $I- im Autoordner vor Terminieren IMMENS wichtig, falls vorher $I+!!!!
  31.     ' Aushängen aus diversen Vektoren
  32.     $I-
  33.     ' !!! Programm im Autoordner niemals mit END oder SYSTEM beenden !!!
  34.     ' klappt zwar z.B. unter 1.04, aber es werden v_clsvwk / appl_exit aufgerufen
  35.     ' bei Rückgabewert 0: auch ~GEMDOS(0) möglich
  36.     ~GEMDOS(76,1)
  37.   ELSE
  38.     SYSTEM
  39.   ENDIF
  40. ENDIF
  41. '
  42. ' >>> Autooordner
  43. IF auto!
  44.   PRINT "Autoordner!"
  45.   '
  46.   WHILE NOT INP?(2)
  47.   WEND
  48.   '
  49.   ' $I- im Autoordner vor Terminieren IMMENS wichtig, falls vorher $I+
  50.   $I-
  51.   ~GEMDOS(0)
  52. ENDIF
  53. '
  54. ' >>> Accessory
  55. IF acc!
  56.   ' $I- im Accessory wichtig, falls vorher $I+!!!!
  57.   ' - wegen Auflösungswechseln
  58.   ' - Entladen mit CHAMELEON
  59.   $I-
  60.   '
  61.   ' APPL_INIT() ist eine Dummy-Funktion und liefert nur die im Initteil
  62.   ' ermittelte Application-Id
  63.   ~MENU_REGISTER(APPL_INIT(),"  Prgname ")
  64.   '
  65.   ' Beispiel...
  66.   DO
  67.     ~EVNT_MESAG(0)
  68.     IF MENU(1)=40
  69.       txt$="[1][Bitte als normales|Programm laufen lassen!|][OK]"
  70.       ~FORM_ALERT(1,txt$)
  71.     ENDIF
  72.   LOOP
  73. ENDIF
  74. '
  75. ' >>> normales Programmm
  76. '
  77. PRINT "Normales Programm!"
  78. WHILE NOT INP?(2)
  79. WEND
  80. '
  81. ' Fehler für ERR erzeugen
  82. ~1/0
  83. label:
  84. PRINT "Hi"
  85. '
  86. '
  87. > PROCEDURE err
  88.   PRINT
  89.   PRINT "Div / 0"
  90.   RESUME label
  91. RETURN
  92. > PROCEDURE break
  93.   PRINT
  94.   PRINT "Hi break"
  95. RETURN
  96. > PROCEDURE ping
  97.   PRINT CHR$(7);
  98. RETURN
  99.